1
使用 using 宣告簡化程式碼
AI037Lesson 5
00:00

在 C++ 中, 作用域運算子 (::) 就像精準的定位系統,告訴編譯器要搜尋哪個命名空間。然而,重複輸入 std:: 就如同每次說話都要寫下全名一樣。我們使用 using 宣告 來建立本地別名。

1. using 宣告

一個 using 宣告讓我們能在不使用前綴的情況下存取另一個命名空間中的名稱。其語法格式為: using 命名空間名稱::名稱;。每一個宣告都必須以 分號結束。宣告後,該名稱便從宣告點開始 處於作用域內 ,直到 區域作用域 (例如函式區塊)或 全域作用域 (檔案層級)。

using std::cin; // cin 現在指向 std::cin
冗長模式std::cout << "Hi";std::cin >> x;std::cout << std::endl;簡化模式using std::cout;using std::endl;cout << "Hi" << endl;

2. 標頭檔潔淨與保護

為了支援 獨立編譯,我們使用 標頭守衛。這些可防止預處理器多次包含同一個檔案,否則會導致「重新定義」錯誤。使用 #ifndef (若未定義), #define,以及 #endif 可確保標頭僅被處理一次。

⚠️ 關鍵規則
一般來說,標頭內部的程式碼不應使用 using 宣告。 由於標頭會被複製到每個 #include包含它的檔案中,標頭內的 using 宣告會將該名稱強制放入所有包含該標頭的檔案的作用域中,可能造成靜默的名稱衝突。
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>